- 1.5
- Documentation version: development
Model Form Functions¶
- modelform_factory(model, form=ModelForm, fields=None, exclude=None, formfield_callback=None, widgets=None, localized_fields=None, labels=None, help_texts=None, error_messages=None)¶
Returns a ModelForm class for the given model. You can optionally pass a form argument to use as a starting point for constructing the ModelForm.
fields is an optional list of field names. If provided, only the named fields will be included in the returned fields.
exclude is an optional list of field names. If provided, the named fields will be excluded from the returned fields, even if they are listed in the fields argument.
widgets is a dictionary of model field names mapped to a widget.
formfield_callback is a callable that takes a model field and returns a form field.
localized_fields is a list of names of fields which should be localized.
labels is a dictionary of model field names mapped to a label.
help_texts is a dictionary of model field names mapped to a help text.
error_messages is a dictionary of model field names mapped to a dictionary of error messages.
See ModelForm factory function for example usage.
Changed in Django 1.6.You must provide the list of fields explicitly, either via keyword arguments fields or exclude, or the corresponding attributes on the form’s inner Meta class. See Selecting the fields to use for more information. Omitting any definition of the fields to use will result in all fields being used, but this behavior is deprecated.
The localized_fields, labels, help_texts, and error_messages parameters were added.
- modelformset_factory(model, form=ModelForm, formfield_callback=None, formset=BaseModelFormSet, extra=1, can_delete=False, can_order=False, max_num=None, fields=None, exclude=None, widgets=None, validate_max=False, localized_fields=None, labels=None, help_texts=None, error_messages=None)¶
Returns a FormSet class for the given model class.
Arguments model, form, fields, exclude, formfield_callback, widgets, localized_fields, labels, help_texts, and error_messages are all passed through to modelform_factory().
Arguments formset, extra, max_num, can_order, can_delete and validate_max are passed through to formset_factory(). See Formsets for details.
See Model formsets for example usage.
Changed in Django 1.6:The widgets, validate_max, localized_fields, labels, help_texts, and error_messages parameters were added.
- inlineformset_factory(parent_model, model, form=ModelForm, formset=BaseInlineFormSet, fk_name=None, fields=None, exclude=None, extra=3, can_order=False, can_delete=True, max_num=None, formfield_callback=None, widgets=None, validate_max=False, localized_fields=None, labels=None, help_texts=None, error_messages=None)¶
Returns an InlineFormSet using modelformset_factory() with defaults of formset=BaseInlineFormSet, can_delete=True, and extra=3.
If your model has more than one ForeignKey to the parent_model, you must specify a fk_name.
See Inline formsets for example usage.
Changed in Django 1.6:The widgets, validate_max and localized_fields, labels, help_texts, and error_messages parameters were added.
Questions/Feedback
Having trouble? We'd like to help!
- Try the FAQ — it's got answers to many common questions.
- Search for information in the archives of the django-users mailing list, or post a question.
- Ask a question in the #django IRC channel, or search the IRC logs to see if it has been asked before.
- If you notice errors with this documentation, please open a ticket and let us know! Please only use the ticket tracker for criticisms and improvements on the docs. For tech support, use the resources above.